// 导入依赖包
import koa from "koa";
// 导入 服务器端口
import { appPort } from "./config/appSetting.js";
// 导入注册好的路由中间件
import Router from "./controllers/index.js";
// 导入 请求体解析 依赖包
import bodyParser from "koa-bodyparser";
// 导入 同步数据库 函数
import { syncDB } from "./db/index.js";
// 跨域 依赖包
import cors from "@koa/cors";

// 同步数据库
syncDB();

// 创建 koa 实例
const app = new koa();

// 使用 跨域 中间件 解决跨域问题
app.use(
  cors({
    // 允许的前端域名和端口
    origin: "http://localhost:5500",
    // 允许的 HTTP 方法
    methods: ["GET", "POST", "PUT", "DELETE"],
    // 允许的请求头
    allowedHeaders: ["Content-Type", "Authorization"],
  })
);

// 请求体解析
app.use(bodyParser());

// 注册路由
app.use(Router);

// 监听服务器端口
app.listen(appPort);

// 当前服务器运行地址
console.log(`当前服务器运行地址：http://localhost:${appPort}`);
